package com.ruoyi.system.mapper;

import com.ruoyi.system.domain.*;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface TmcUserMapper {
    //    费
    List<Map<String, Object>> queryFeeList(TmcUser tmcUser);

    //    单次缴费内容
    List<TmcHouseSubbill> queryFeeListById(TmcHouseSubbill tmcHouseSubbill);

    //    人
    List<TmcUser> queryList(TmcUser tmcUser);

    //房
    List<TmcUserHouse> queryHouseList(TmcUser tmcUser);

    //车位
    List<TmcUserStall> queryStallList(TmcUser tmcUser);
//    区域
    List<District> selectDistrictList();
    //车牌
    List<TmcUserCarcode> queryCarcodeList(TmcUser tmcUser);

    //疫情信息
    List<TmcEpidemicUser> queryEpidemicList(TmcEpidemicUser tmcEpidemicUser);

    //疫情出入
    List<TmcEpidemicUserRecord> queryEpidemicRecordList(TmcEpidemicUser tmcEpidemicUser);

    //单个物业人员查询
    public ClientUser selectClientUserById(Long id);

    //物业人员查询
    public List<ClientUser> selectClientUserList(ClientUser clientUser);

    //物业人员添加
    public int insertClientUser(ClientUser clientUser);

    //物业人员修改
    public int updateClientUser(ClientUser clientUser);

    //物业人员删除
    public int deleteClientUserById(Long id);
//    用户所在城市天气
    public String SelectCity(String Cityname);

    //物业人员批量删除
    public int deleteClientUserByIds(Long[] ids);

    //修改用户行程表
    int updateRecord(TmcEpidemicUserRecord tmcEpidemicUserRecord);

    //新增行程信息
    int insertRecord(TmcEpidemicUserRecord tmcEpidemicUserRecord);

    //根据Id查询用户二维码基本信息
    TmcEpidemicUser queryUserInfo(Long id);

    //不为空则来注册
    void insertregistered(TmcEpidemicUserRecord tmcEpidemicUserRecord);

    //修改状态
    Integer updateregistered(TmcEpidemicUserRecord tmcEpidemicUserRecord);

    //查询用户每日打卡记录
    List<TmcEpidemicUserRecord> queryUserRecord(Long publicuserId);

    //根据ID查询用户打卡记录
    TmcEpidemicUserRecord queryUserRecordById(Long id);

    //小程序注册
    int insertUser(TmcUser tmcUser);
    //根据id查基本信息
    TmcUser queryListById(@Param("id") Long id);
    /**
     * 新增【车牌】
     *
     * @param tmcUserCar 【车牌】
     * @return 结果
     */
    public int insertTmcUserCar(TmcUserCarcode tmcUserCar);
    /**
     * 新增【用户表单】
     *
     * @param  【用户】
     * @return 结果
     */
    public int insertTmcUserFormid(TmcUserFormid tmcUserFormid);

    /**
     * 修改【车牌】
     *
     * @param tmcUserCar 【车牌】
     * @return 结果
     */
    public int updateTmcUserCar(TmcUserCarcode tmcUserCar);

    /**
     * 删除【车牌】
     *
     * @param id 【车牌】ID
     * @return 结果
     */
    public int deleteTmcUserCarById(Long id);

    /**
     * 批量删除【车牌】
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteTmcUserCarByIds(Long[] ids);
    /**
     * 查詢單個【车牌】
     *
     * @param id 需要删除的数据ID
     * @return 结果
     */
    TmcUserCarcode selectTmcUserCarById(Long id);

    //查询当日提交次数
    TmcEpidemicUserRecord selectSubmit(TmcEpidemicUserRecord tmcEpidemicUserRecord);

    int insertTmcUser(TmcUser user);

    int qureyopenIDsum(String openid);
    int qureyPhonesum(String pPhone);
    String queryClientName(Long id);
    String queryCompanyName(Long id);

    int updateTmcUser(TmcUser tmcUser);
    /**
     * 查询管理员用户，用于登录PC管理客户端列表
     *
     * @param comUserAdmin 管理员用户，用于登录PC管理客户端
     * @return 管理员用户，用于登录PC管理客户端集合
     */
    public List<ComUserAdmin> selectComUserAdmin(ComUserAdmin comUserAdmin);

    int updateUserName(Long id);
    int updateAddUserName(Map map);
    int querySumByid(Map map);
    int querySumBytel(String userTel);

    TmcUser selectUserByid(Long hoUserId);
}
